package demo1;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * Date: 2025-02-26
 * Time: 9:47
 */

class MyArray_1<E extends Number>{
    public Object[] objects = new Object[10];

    public void setValue(int pos,E val) {
        objects[pos] = val;
    }

    public E getValue(int pos) {
        return (E)objects[pos];
    }
}

class Test{

}
public class demo5 {
    public static void main(String[] args) {
//        泛型上界的示例：
        MyArray_1<Integer> myArray1 = new MyArray_1();
        myArray1.setValue(0,10);

//        <E extends Number>,表示：必须是Number或Number类型的子类类型，才可以使用这个泛型类。
//        这就是泛型的上界，等于是加了一个限制条件
/*        MyArray_1<String> myArray2 = new MyArray_1<String>();
        myArray2.setValue(0,"string");*/


    }
    public static void main1(String[] args) {
        Test test = new Test();
        System.out.println(test);
//        demo1.Test@3b07d329

        MyArray_1<Integer> myArray_1 = new MyArray_1();
        System.out.println(myArray_1);
//        demo1.MyArray_1@404b9385
//        擦除机制的体现：泛型不参与类型的构成
    }
}
